Conventional image reproduction systems typically utilize a color table to produce color images. The color table has entries that specify relative quantities of three primary colors (e.g., red-blue-green (RBG) or cyan-yellow-magenta (CYM)), which produce different blends of the three colors resulting in various color shades. The color table can be conceptualized as a three-dimensional color space defined by the three primary colors. The table entries define equal spaced color points in this space along the three color axes. As an example, a color table might have 17 color points along each of the three color axes. Movement along each axis results in a different color output.
When producing a color image, the image reproduction system receives a color value (e.g., an RBG value, or a CYM value) for each data element in the image. The color value consists of three 8-bit values that identify one color point on each color axis. The image reproduction system uses the color value to lookup in the color table and retrieve the appropriate color blending quantities to form the desired color. The parameters retrieved from the color table are passed to the imaging subsystem to produce a colored dot. As an example, the color table output comprises four 8-bit values, one for each of the three colors and a fourth value for black.
In most cases, the quality of the color image is acceptable. However, in some applications, it is desirable to improve the quality of the color image. For instance, graphic arts applications and digital photography applications benefit from the highest quality color reproduction.
To improve the color quality and color matching, image reproduction systems are calibrated to produce colors with the intended hue, lightness, and colorfulness. This calibration process involves a sample-and-measure technique. The image reproduction system produces color samples from regularly spaced color points in the color space. A color printer, for example, prints color samples in the form of square patches on several sheets of paper. The printer deposits one patch of one color point, then varies one or more of the three primary colors to arrive at a next color point and prints the next patch for that next color point. The process is repeated until a full sample array of square patches is produced.
A measuring device is utilized to measure the color quality of the color samples. Conventional measuring devices include a densitometer, which measures the density of the color within the color patch; a calorimeter, which measures the spectral response of the color patch; and a spectrophotometer, which provides a more accurate measurement of the spectral response. These measurement devices are typically constructed as handheld units, although they can be implemented into machines with media handling capabilities.
The measuring process generally consists of a technician holding the measurement device over each color sample to obtain an actual color reading for that sample. The measurement device averages multiple readings of the same color sample to derive a measured color content. The data from the measurement is used to calibrate the color table. This is done for each color sample.
Thereafter, when producing a colored image, the image reproduction system processes the incoming color value by looking up in the color table to find the indexed color points of the color space. The image reproduction system then interpolates between the color points to adjust the blended color quantities. This results in a more accurate and truer color output.
One of the drawbacks of this conventional approach to calibrating a color table is that it assumes consistent and identical reproduction conditions when printing color samples. This is, unfortunately, not the case. Mechanical and environmental induced variations tend to introduce unpredictable and sometimes significant errors into the color table. There are many sources for these variations. Machines are inherently imperfect and tend to change as they age; they operate in environments where temperature and humidity fluctuate; and they handle paper or media that might vary in quality from sheet-to-sheet. Due to these externally introduced errors, producing the same color sample ten times might very well result in ten different measurements. If a measurement is used that has deviated from the average response of the machine, interpolations using the resulting color table will consistently produce erroneous results.
Accordingly, it would be beneficial to develop a color calibration technique that accounts for errors introduced by mechanical and environmental variations.